﻿using System;
using SharpSqlAnalyzer.nodes;

namespace SharpSqlAnalyzer.stmt.mssql
{
	// Token: 0x02000183 RID: 387
	public class TMssqlSaveTran : TCustomSqlStatement
	{
		// Token: 0x06000D92 RID: 3474 RVA: 0x00308D7E File Offset: 0x00306F7E
		public TMssqlSaveTran(EDbVendor dbvendor) : base(dbvendor)
		{
			this.sqlstatementtype = ESqlStatementType.sstmssqlsavetran;
		}

		// Token: 0x06000D93 RID: 3475 RVA: 0x00308D92 File Offset: 0x00306F92
		internal override void buildsql()
		{
		}

		// Token: 0x06000D94 RID: 3476 RVA: 0x00308D94 File Offset: 0x00306F94
		internal override void clear()
		{
		}

		// Token: 0x06000D95 RID: 3477 RVA: 0x00308D96 File Offset: 0x00306F96
		internal override string getasprettytext()
		{
			return "";
		}

		// Token: 0x06000D96 RID: 3478 RVA: 0x00308D9D File Offset: 0x00306F9D
		internal virtual void iterate(TVisitorAbs pvisitor)
		{
		}

		// Token: 0x1700027A RID: 634
		// (get) Token: 0x06000D97 RID: 3479 RVA: 0x00308D9F File Offset: 0x00306F9F
		// (set) Token: 0x06000D98 RID: 3480 RVA: 0x00308DA7 File Offset: 0x00306FA7
		public virtual TObjectName TransactionName
		{
			get
			{
				return this.transactionName;
			}
			set
			{
				this.transactionName = value;
			}
		}

		// Token: 0x1700027B RID: 635
		// (get) Token: 0x06000D99 RID: 3481 RVA: 0x00308DB0 File Offset: 0x00306FB0
		public virtual TSourceToken Trans_or_work
		{
			get
			{
				return this.trans_or_work;
			}
		}

		// Token: 0x06000D9A RID: 3482 RVA: 0x00308DB8 File Offset: 0x00306FB8
		public override int doParseStatement(TCustomSqlStatement psql)
		{
			if (this.rootNode == null)
			{
				return -1;
			}
			TDummy tdummy = (TDummy)this.rootNode;
			base.doParseStatement(psql);
			this.transactionName = (TObjectName)tdummy.node1;
			if (this.transactionName != null)
			{
				this.transactionName.ObjectType = 21;
			}
			this.trans_or_work = tdummy.st1;
			return 0;
		}

		// Token: 0x06000D9B RID: 3483 RVA: 0x00308E16 File Offset: 0x00307016
		public override void accept(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x06000D9C RID: 3484 RVA: 0x00308E26 File Offset: 0x00307026
		public override void acceptChildren(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x04001312 RID: 4882
		private TObjectName transactionName;

		// Token: 0x04001313 RID: 4883
		private TSourceToken trans_or_work;
	}
}
